Alteryx Promote 2018.3 インストール手順(on Amazon EC2)
こんにちは、小澤です。
Alteryxの製品シリーズの中でも最も新しいAlteryx Promoteは機械学習モデルをデプロイしてAPIサービスを提供してくれるものです。 Alteryx Designerで作成したモデルはもちろんのこと、PythonやRで作成したモデルのデプロイも可能です。
さて、今回はそんなAlteryx Promoteのインストール手順を紹介したいと思います。
インストール要件
まず最初にAlteryx Promoteのインストール要件を解説しておきます。 必要なマシンスペックなどは以下のようになります。
項目 | スペック |
---|---|
OS | Linux CentOS 7 |
CPU | 4コア以上 |
メモリ | 16GB以上 |
ディスク | 100GB以上 |
最小構成台数 | 3台 |
EC2のインスタンスの場合、m5.xlarge相当となります。
注意が必要な点は2つあります。
1点目はOSがCentOS7のみということです。他のAlteryx製品は動作環境としてWindowsでしたが、Promoteに関してはLinuxで動きます。また、Amazon Linuxで試してみたところインストールに失敗したのでCentOS7じゃないとダメです。
2点目は最小構成台数が3台となっていることです。 1台だけでは動きませんので、必ず3台以上用意するようにしてください。
インストール手順
では、ここからインストール手順を解説していきます。
セキュリティグループの設定
セキュリティグループの設定は以下のようにします。 ssh, http, httpsの3つは例として0.0.0.0/0としていますが、必要に応じて変更してください。
EC2インスタンスの起動
最初に3台EC2インスタンスを立ち上げます。 通常のインスタンス立ち上げとやり方は同じなので、この部分に関しては解説しませんが、AMIの選択の際にCentOS 7にすることを忘れないようにしてください。 また、セキュリティグループは先ほど作成したものを利用します。
インストールのための準備
インストール前にAlteryx Promote用のユーザを作成しておく必要があります。 まず最初にpromoteユーザがsshでログインできるように鍵を作っておきます。
ssh-keygen
ここから先はインストールに際して必要な設定をEC2インスタンス上で行います。 3台全ての環境で同じ手順の操作を行います。
# SELinuxの無効化 sudo sed -i -e 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config sudo reboot # パッケージのアップデート # ここから先はスーパーユーザ権限が必要なのでrootで作業する sudo su - sudo yum update -y # ユーザの作成 adduser promote passwd promote # promoteユーザでパスワードなしsudoができるように設定 usermod -aG wheel promote visudo ### エディタ上で以下を記述 ### promote ALL=(ALL) NOPASSWD: ALL ### ここまで ### mkdir /home/promote/.ssh/ touch /home/promote/.ssh/authorized_keys # authorized_keysに最初に作成したssh公開鍵の中身をコピペする vi /home/promote/.ssh/authorized_keys chown -R promote:promote /home/promote/.ssh chmod 700 /home/promote/.ssh chmod 600 /home/promote/.ssh/authorized_keys
インストール
ではいよいよインストールを行います。 インストールにはローカルPCから行います。 インストールに際してはGitが使える環境が必要となりますので、ない場合はインストールしておいてください。
まず、最初にinstall.shの上部の値を実際の値に合わせて書き換えます。
QUAY_PROMOTE_USERNAME='<ライセンス情報のUserに記載された値>' QUAY_PROMOTE_PW='<ライセンス情報のKeyに記載された値>' NODE_1_IP='<1台目(マスタ)のグローバルIP>' NODE_2_IP='<2台目のグローバルIP>' NODE_3_IP='<3台目のグローバルIP>' NODE_1_INT_IP='<1台目(マスタ)のプライベートIP>' NODE_2_INT_IP='<2台目のプライベートIP>' NODE_3_INT_IP='<3台目のプライベートIP>' SSH_USER='promote' KEY_PATH='<ssh-keygenで作成された秘密鍵のパス>'
この状態でインストールを実行します。
./install.sh
インストールに際してはいくつかの質問に回答していきます。 まず最初に上記で記述した値が正しいかの確認です。
___ ____ ____ __ / | / / /____ _______ ___ __ / __ \_________ ____ ___ ____ / /____ / /| | / / __/ _ \/ ___/ / / / |/_/ / /_/ / ___/ __ \/ __ `__ \/ __ \/ __/ _ \ / ___ |/ / /_/ __/ / / /_/ /> < / ____/ / / /_/ / / / / / / /_/ / /_/ __/ /_/ |_/_/\__/\___/_/ \__, /_/|_| /_/ /_/ \____/_/ /_/ /_/\____/\__/\___/ /____/ This script will help you get up and running with Alteryx Promote! ***CONFIGURING ALTERYX PROMOTE ON THE FOLLOWING NODES*** PUBLIC IPs (FOR SSH) Leader node IP: <1台目のグローバルIP> Master node 2 IP address: <2台目のグローバルIP> Master node 3 IP address: <3台目のグローバルIP> INTERNAL IPs Leader node internal IP: <1台目のプライベートIP> Master node 2 internal IP: <2台目のプライベートIP> Master node 3 internal IP: <3台目のプライベートIP> ssh user: promote path to PEM: <ssh秘密鍵のパス> PROMOTE CREDENTIALS Quay Username: <ライセンスのUser> Quay Password: <ライセンスのKey> Is the above information correct? (y/n)
除法に問題がなければ「y」を押すと次に進みます(Enterを押す必要はありません)。
次に自身でで持っているCertificationを使うかを聞かれます。 今回はこちらも「y」を選択します。
Do you have your own certificates you would like to use? (y/n)
続いてはDockerをインストールするか聞かれます。ここではまっさらなインスタンスしか立ち上げてないので「y」を選択します。
========================================================================= ================ Docker Installation ==================================== ========================================================================= Does Docker need to be installed on these machines? (y/n)
この後インストールのプロセスが走ります。
次にDocker Swarmの設定を行うか聞かれます。こちらも「y」を選択します。
========================================================================= ================ Docker Swarm Configuration ============================= ========================================================================= Does Docker Swarm need to be configured on these machines? (y/n)
TLSに必要な情報を入力します。 ご自身の環境に合わせて設定してください。
========================================================================= ================ Setup TLS Certificates ================================= ========================================================================= ... ... Country Name (2 letter code) [XX]: State or Province Name (full name) []: Locality Name (eg, city) [Default City]: Organization Name (eg, company) [Default Company Ltd]: Organizational Unit Name (eg, section) []: Common Name (eg, your name or your server's hostname) []: Email Address []:
あとはしばし待たれれば完了です。 最後にIPアドレス表記でのアクセス先が表示されます。
visit http://<Your Master Node Global IP> to continue with Promote registration
アクセス
インストールが完了したらブラウザからアクセスします。 先ほど表示されたIPアドレスまたはマスタノードのURLを入力します。
アクセスすると初回のみAdminユーザの登録とライセンスキーの入力画面が表示されます。 ライセンスキーはinstall.shに記載したUserやKeyではなくライセンスキーとして発行されているもの(英数字を数桁ずつハイフンでくぎったもの)を入力します。
ログイン画面に遷移するので先ほど作成したユーザでログインしてください。
ログインすると以下のような画面が表示されます。
この環境ではすでにStagingに1つモデルが上がってますが、初回は何も登録されていない状態となります。
おわりに
今回は、Alteryx Promoteのインストール方法を紹介しました。 これまでの他の製品と違って、次へ次へで完了させるノリではないので、"黒い画面に白い文字"の環境に慣れていない人にはハードルが高く感じられるかもしれませんが、慣れれば次へ次へとそんなに変わらないくらいの感覚でインストールできるようになるかと思います。
Alteryxの導入なら、クラスメソッドにおまかせください
日本初のAlteryxビジネスパートナーであるクラスメソッドが、Alteryxの導入から活用方法までサポートします。14日間の無料トライアルも実施中ですので、お気軽にご相談ください。